home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3c / fmtmsg.z / fmtmsg
Encoding:
Text File  |  2002-10-03  |  24.0 KB  |  413 lines

  1.  
  2.  
  3.  
  4. ffffmmmmttttmmmmssssgggg((((3333CCCC))))                                                          ffffmmmmttttmmmmssssgggg((((3333CCCC))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      _ffff_mmmm_tttt_mmmm_ssss_gggg - display a message on _ssss_tttt_dddd_eeee_rrrr_rrrr or system console
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ffff_mmmm_tttt_mmmm_ssss_gggg_...._hhhh_>>>>
  13.  
  14.      _iiii_nnnn_tttt _ffff_mmmm_tttt_mmmm_ssss_gggg_((((_llll_oooo_nnnn_gggg _cccc_llll_aaaa_ssss_ssss_iiii_ffff_iiii_cccc_aaaa_tttt_iiii_oooo_nnnn_,,,, _cccc_oooo_nnnn_ssss_tttt  _cccc_hhhh_aaaa_rrrr _****_llll_aaaa_bbbb_eeee_llll_,,,, _iiii_nnnn_tttt _ssss_eeee_vvvv_eeee_rrrr_iiii_tttt_yyyy_,,,,
  15.          _cccc_oooo_nnnn_ssss_tttt _cccc_hhhh_aaaa_rrrr _****_tttt_eeee_xxxx_tttt_,,,, _cccc_oooo_nnnn_ssss_tttt _cccc_hhhh_aaaa_rrrr _****_aaaa_cccc_tttt_iiii_oooo_nnnn_,,,, _cccc_oooo_nnnn_ssss_tttt _cccc_hhhh_aaaa_rrrr _****_tttt_aaaa_gggg_))));
  16.  
  17. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  18.      Based on a message's classification component, _ffff_mmmm_tttt_mmmm_ssss_gggg writes a formatted
  19.      message to _ssss_tttt_dddd_eeee_rrrr_rrrr, to the console, or to both.
  20.  
  21.      _ffff_mmmm_tttt_mmmm_ssss_gggg can be used instead of the traditional _pppp_rrrr_iiii_nnnn_tttt_ffff interface to display
  22.      messages to _ssss_tttt_dddd_eeee_rrrr_rrrr.  _ffff_mmmm_tttt_mmmm_ssss_gggg, in conjunction with _gggg_eeee_tttt_tttt_xxxx_tttt, provides a
  23.      simple interface for producing language-independent applications.
  24.  
  25.      A formatted message consists of up to five standard components as defined
  26.      below.  The component, _c_l_a_s_s_i_f_i_c_a_t_i_o_n, is not part of the standard
  27.      message displayed to the user, but rather defines the source of the
  28.      message and directs the display of the formatted message.
  29.  
  30.      _c_l_a_s_s_i_f_i_c_a_t_i_o_n
  31.            Contains identifiers from the following groups of major
  32.            classifications and subclassifications.  Any one identifier from a
  33.            subclass may be used in combination by ORing the values together
  34.            with a single identifier from a different subclass.  Two or more
  35.            identifiers from the same subclass should not be used together,
  36.            with the exception of identifiers from the display subclass.  (Both
  37.            display subclass identifiers may be used so that messages can be
  38.            displayed to both _ssss_tttt_dddd_eeee_rrrr_rrrr and the system console).
  39.  
  40.               ``Major classifications'' identify the source of the condition.
  41.               Identifiers are:  _MMMM_MMMM______HHHH_AAAA_RRRR_DDDD (hardware), _MMMM_MMMM______SSSS_OOOO_FFFF_TTTT (software), and
  42.               _MMMM_MMMM______FFFF_IIII_RRRR_MMMM (firmware).
  43.  
  44.               ``Message source subclassifications'' identify the type of
  45.               software in which the problem is spotted.  Identifiers are:
  46.               _MMMM_MMMM______AAAA_PPPP_PPPP_LLLL (application), _MMMM_MMMM______UUUU_TTTT_IIII_LLLL (utility), and _MMMM_MMMM______OOOO_PPPP_SSSS_YYYY_SSSS
  47.               (operating system).
  48.  
  49.               ``Display subclassifications'' indicate where the message is to
  50.               be displayed.  Identifiers are: _MMMM_MMMM______PPPP_RRRR_IIII_NNNN_TTTT to display the message
  51.               on the standard error stream, _MMMM_MMMM______CCCC_OOOO_NNNN_SSSS_OOOO_LLLL_EEEE to display the message
  52.               on the system console.  Neither, either, or both identifiers may
  53.               be used.
  54.  
  55.               ``Status subclassifications'' indicate whether the application
  56.               will recover from the condition.  Identifiers are: _MMMM_MMMM______RRRR_EEEE_CCCC_OOOO_VVVV_EEEE_RRRR
  57.               (recoverable) and _MMMM_MMMM______NNNN_RRRR_EEEE_CCCC_OOOO_VVVV (non-recoverable).
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ffffmmmmttttmmmmssssgggg((((3333CCCC))))                                                          ffffmmmmttttmmmmssssgggg((((3333CCCC))))
  71.  
  72.  
  73.  
  74.               An additional identifier, _MMMM_MMMM______NNNN_UUUU_LLLL_LLLL_MMMM_CCCC, indicates that no
  75.               classification component is supplied for the message.
  76.  
  77.      _l_a_b_e_l Identifies the source of the message.  The format of this component
  78.            is two fields separated by a colon.  The first field is up to 10
  79.            characters long; the second is up to 14 characters.  Suggested
  80.            usage is that _l_a_b_e_l identifies the package in which the application
  81.            resides as well as the program or application name.  For example,
  82.            the _l_a_b_e_l _UUUU_XXXX_::::_cccc_aaaa_tttt indicates the UNIX System V package and the _cccc_aaaa_tttt
  83.            application.
  84.  
  85.      _s_e_v_e_r_i_t_y
  86.            Indicates the seriousness of the condition.  Identifiers for the
  87.            standard levels of _s_e_v_e_r_i_t_y are:
  88.  
  89.               _MMMM_MMMM______HHHH_AAAA_LLLL_TTTT indicates that the application has encountered a severe
  90.               fault and is halting.  Produces the print string HALT_....
  91.  
  92.               _MMMM_MMMM______EEEE_RRRR_RRRR_OOOO_RRRR indicates that the application has detected a fault.
  93.               Produces the print string ERROR_....
  94.  
  95.               _MMMM_MMMM______WWWW_AAAA_RRRR_NNNN_IIII_NNNN_GGGG indicates a condition out of the ordinary that might
  96.               be a problem and should be watched.  Produces the print string
  97.               WARNING_....
  98.  
  99.               _MMMM_MMMM______IIII_NNNN_FFFF_OOOO provides information about a condition that is not in
  100.               error.  Produces the print string INFO_....
  101.  
  102.               _MMMM_MMMM______NNNN_OOOO_SSSS_EEEE_VVVV indicates that no severity level is supplied for the
  103.               message.
  104.  
  105.            Other severity levels may be added by using the _aaaa_dddd_dddd_ssss_eeee_vvvv_eeee_rrrr_iiii_tttt_yyyy
  106.            routine.
  107.  
  108.      _t_e_x_t  Describes the condition that produced the message.  The _t_e_x_t string
  109.            is not limited to a specific size.
  110.  
  111.      _a_c_t_i_o_n
  112.            Describes the first step to be taken in the error recovery process.
  113.            _ffff_mmmm_tttt_mmmm_ssss_gggg precedes each action string with the prefix:  TO FIX:_....  _TTTT_hhhh_eeee
  114.            _a_c_t_i_o_n string is not limited to a specific size.
  115.  
  116.      _t_a_g   An identifier which references on-line documentation for the
  117.            message.  Suggested usage is that _t_a_g includes the _l_a_b_e_l and a
  118.            unique identifying number.  A sample _t_a_g is _UUUU_XXXX_::::_cccc_aaaa_tttt_::::_1111_4444_6666.
  119.  
  120.    EEEEnnnnvvvviiiirrrroooonnnnmmmmeeeennnntttt VVVVaaaarrrriiiiaaaabbbblllleeeessss
  121.      There are two environment variables that control the behavior of _ffff_mmmm_tttt_mmmm_ssss_gggg:
  122.      _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB and _SSSS_EEEE_VVVV______LLLL_EEEE_VVVV_EEEE_LLLL.
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. ffffmmmmttttmmmmssssgggg((((3333CCCC))))                                                          ffffmmmmttttmmmmssssgggg((((3333CCCC))))
  137.  
  138.  
  139.  
  140.      _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB tells _ffff_mmmm_tttt_mmmm_ssss_gggg which message components it is to select when
  141.      writing messages to _ssss_tttt_dddd_eeee_rrrr_rrrr.  The value of _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB is a colon-separated
  142.      list of optional keywords.  _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB can be set as follows:
  143.  
  144.           _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB_====[_k_e_y_w_o_r_d[_::::_k_e_y_w_o_r_d[_::::...]]]
  145.           _eeee_xxxx_pppp_oooo_rrrr_tttt _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB
  146.  
  147.      Valid _k_e_y_w_o_r_d_s are:  _llll_aaaa_bbbb_eeee_llll, _ssss_eeee_vvvv_eeee_rrrr_iiii_tttt_yyyy, _tttt_eeee_xxxx_tttt, _aaaa_cccc_tttt_iiii_oooo_nnnn, and _tttt_aaaa_gggg.  If _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB
  148.      contains a keyword for a component and the component's value is not the
  149.      component's null value, _ffff_mmmm_tttt_mmmm_ssss_gggg includes that component in the message
  150.      when writing the message to _ssss_tttt_dddd_eeee_rrrr_rrrr.  If _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB does not include a
  151.      keyword for a message component, that component is not included in the
  152.      display of the message.  The keywords may appear in any order.  If
  153.      _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB is not defined, if its value is the null-string, if its value is
  154.      not of the correct format, or if it contains keywords other than the
  155.      valid ones listed above, _ffff_mmmm_tttt_mmmm_ssss_gggg selects all components.
  156.  
  157.      The first time _ffff_mmmm_tttt_mmmm_ssss_gggg is called, it examines the _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB environment
  158.      variable to see which message components it is to select when generating
  159.      a message to write to the standard error stream, _ssss_tttt_dddd_eeee_rrrr_rrrr.  The values
  160.      accepted on the initial call are saved for future calls.
  161.  
  162.      _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB affects only which components are selected for display to the
  163.      standard error stream.  All message components are included in console
  164.      messages.
  165.  
  166.      _SSSS_EEEE_VVVV______LLLL_EEEE_VVVV_EEEE_LLLL defines severity levels and associates print strings with them
  167.      for use by _ffff_mmmm_tttt_mmmm_ssss_gggg.  The standard severity levels shown below cannot be
  168.      modified.  Additional severity levels can also be defined, redefined, and
  169.      removed using _aaaa_dddd_dddd_ssss_eeee_vvvv_eeee_rrrr_iiii_tttt_yyyy [see _aaaa_dddd_dddd_ssss_eeee_vvvv_eeee_rrrr_iiii_tttt_yyyy(3C)].  If the same severity
  170.      level is defined by both _SSSS_EEEE_VVVV______LLLL_EEEE_VVVV_EEEE_LLLL and _aaaa_dddd_dddd_ssss_eeee_vvvv_eeee_rrrr_iiii_tttt_yyyy, the definition by
  171.      _aaaa_dddd_dddd_ssss_eeee_vvvv_eeee_rrrr_iiii_tttt_yyyy is controlling.
  172.  
  173.           0   (no severity is used)
  174.           1   HALT
  175.           2   ERROR
  176.           3   WARNING
  177.           4   INFO
  178.  
  179.      _SSSS_EEEE_VVVV______LLLL_EEEE_VVVV_EEEE_LLLL can be set as follows:
  180.  
  181.           _SSSS_EEEE_VVVV______LLLL_EEEE_VVVV_EEEE_LLLL_====[_d_e_s_c_r_i_p_t_i_o_n[_::::_d_e_s_c_r_i_p_t_i_o_n[_::::...]]]
  182.           _eeee_xxxx_pppp_oooo_rrrr_tttt _SSSS_EEEE_VVVV______LLLL_EEEE_VVVV_EEEE_LLLL
  183.  
  184.      _d_e_s_c_r_i_p_t_i_o_n is a comma-separated list containing three fields:
  185.  
  186.           _d_e_s_c_r_i_p_t_i_o_n_====_s_e_v_e_r_i_t_y__k_e_y_w_o_r_d_,,,,_l_e_v_e_l_,,,,_p_r_i_n_t_s_t_r_i_n_g
  187.  
  188.      _s_e_v_e_r_i_t_y__k_e_y_w_o_r_d is a character string that is used as the keyword on the
  189.      _----_ssss _s_e_v_e_r_i_t_y option to the _ffff_mmmm_tttt_mmmm_ssss_gggg command.  (This field is not used by the
  190.      _ffff_mmmm_tttt_mmmm_ssss_gggg function.)
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. ffffmmmmttttmmmmssssgggg((((3333CCCC))))                                                          ffffmmmmttttmmmmssssgggg((((3333CCCC))))
  203.  
  204.  
  205.  
  206.      _l_e_v_e_l is a character string that evaluates to a positive integer (other
  207.      than 0, 1, 2, 3, or 4, which are reserved for the standard severity
  208.      levels).  If the keyword _s_e_v_e_r_i_t_y__k_e_y_w_o_r_d is used, _l_e_v_e_l is the severity
  209.      value passed on to the _ffff_mmmm_tttt_mmmm_ssss_gggg function.
  210.  
  211.      _p_r_i_n_t_s_t_r_i_n_g is the character string used by _ffff_mmmm_tttt_mmmm_ssss_gggg in the standard
  212.      message format whenever the severity value _l_e_v_e_l is used.
  213.  
  214.      If a _d_e_s_c_r_i_p_t_i_o_n in the colon list is not a three-field comma list, or,
  215.      if the second field of a comma list does not evaluate to a positive
  216.      integer, that _d_e_s_c_r_i_p_t_i_o_n in the colon list is ignored.
  217.  
  218.      The first time _ffff_mmmm_tttt_mmmm_ssss_gggg is called, it examines the _SSSS_EEEE_VVVV______LLLL_EEEE_VVVV_EEEE_LLLL environment
  219.      variable, if defined, to see whether the environment expands the levels
  220.      of severity beyond the five standard levels and those defined using
  221.      _aaaa_dddd_dddd_ssss_eeee_vvvv_eeee_rrrr_iiii_tttt_yyyy.  The values accepted on the initial call are saved for
  222.      future calls.
  223.  
  224.    UUUUsssseeee iiiinnnn AAAApppppppplllliiiiccccaaaattttiiiioooonnnnssss
  225.      One or more message components may be systematically omitted from
  226.      messages generated by an application by using the null value of the
  227.      argument for that component.
  228.  
  229.      The table below indicates the null values and identifiers for _ffff_mmmm_tttt_mmmm_ssss_gggg
  230.      arguments.
  231.  
  232.                   ______________________________________________
  233.                    Argument   Type     Null-Value    Identifier
  234.                   ______________________________________________
  235.                    _l_a_b_e_l      _cccc_hhhh_aaaa_rrrr_****   _((((_cccc_hhhh_aaaa_rrrr_****_)))) _NNNN_UUUU_LLLL_LLLL   _MMMM_MMMM______NNNN_UUUU_LLLL_LLLL_LLLL_BBBB_LLLL
  236.                    _s_e_v_e_r_i_t_y   _iiii_nnnn_tttt     _0000              _MMMM_MMMM______NNNN_UUUU_LLLL_LLLL_SSSS_EEEE_VVVV
  237.                    _c_l_a_s_s      _llll_oooo_nnnn_gggg    _0000_LLLL             _MMMM_MMMM______NNNN_UUUU_LLLL_LLLL_MMMM_CCCC
  238.                    _t_e_x_t       _cccc_hhhh_aaaa_rrrr_****   _((((_cccc_hhhh_aaaa_rrrr_****_)))) _NNNN_UUUU_LLLL_LLLL   _MMMM_MMMM______NNNN_UUUU_LLLL_LLLL_TTTT_XXXX_TTTT
  239.                    _a_c_t_i_o_n     _cccc_hhhh_aaaa_rrrr_****   _((((_cccc_hhhh_aaaa_rrrr_****_)))) _NNNN_UUUU_LLLL_LLLL   _MMMM_MMMM______NNNN_UUUU_LLLL_LLLL_AAAA_CCCC_TTTT
  240.                    _t_a_g        _cccc_hhhh_aaaa_rrrr_****   _((((_cccc_hhhh_aaaa_rrrr_****_)))) _NNNN_UUUU_LLLL_LLLL   _MMMM_MMMM______NNNN_UUUU_LLLL_LLLL_TTTT_AAAA_GGGG
  241.                   ______________________________________________
  242.                   |||||||||
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.                                                                 |||||||||
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.      Another means of systematically omitting a component is by omitting the
  261.      component keyword(s) when defining the _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB environment variable (see
  262.      the ``Environment Variables'' section).
  263.  
  264. EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS
  265.      Example 1:
  266.  
  267.      The following example of _ffff_mmmm_tttt_mmmm_ssss_gggg:
  268.  
  269.           _ffff_mmmm_tttt_mmmm_ssss_gggg_((((_MMMM_MMMM______PPPP_RRRR_IIII_NNNN_TTTT_,,,, _""""_UUUU_XXXX_::::_cccc_aaaa_tttt_""""_,,,, _MMMM_MMMM______EEEE_RRRR_RRRR_OOOO_RRRR_,,,, _""""_iiii_nnnn_vvvv_aaaa_llll_iiii_dddd _ssss_yyyy_nnnn_tttt_aaaa_xxxx_""""_,,,, _""""_rrrr_eeee_ffff_eeee_rrrr _tttt_oooo
  270.           _mmmm_aaaa_nnnn_uuuu_aaaa_llll_""""_,,,, _""""_UUUU_XXXX_::::_cccc_aaaa_tttt_::::_0000_0000_1111_""""_))))
  271.  
  272.      produces a complete message in the standard message format:
  273.  
  274.  
  275.  
  276.  
  277.  
  278.                                                                         PPPPaaaaggggeeee 4444
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285. ffffmmmmttttmmmmssssgggg((((3333CCCC))))                                                          ffffmmmmttttmmmmssssgggg((((3333CCCC))))
  286.  
  287.  
  288.  
  289.           _UUUU_XXXX_::::_cccc_aaaa_tttt_:::: _EEEE_RRRR_RRRR_OOOO_RRRR_:::: _iiii_nnnn_vvvv_aaaa_llll_iiii_dddd _ssss_yyyy_nnnn_tttt_aaaa_xxxx
  290.                    _TTTT_OOOO _FFFF_IIII_XXXX_:::: _rrrr_eeee_ffff_eeee_rrrr _tttt_oooo _mmmm_aaaa_nnnn_uuuu_aaaa_llll   _UUUU_XXXX_::::_cccc_aaaa_tttt_::::_0000_0000_1111
  291.  
  292.      Example 2:
  293.  
  294.      When the environment variable _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB is set as follows:
  295.  
  296.           _MMMM_SSSS_GGGG_VVVV_EEEE_RRRR_BBBB_====_ssss_eeee_vvvv_eeee_rrrr_iiii_tttt_yyyy_::::_tttt_eeee_xxxx_tttt_::::_aaaa_cccc_tttt_iiii_oooo_nnnn
  297.  
  298.      and the Example 1 is used, _ffff_mmmm_tttt_mmmm_ssss_gggg produces:
  299.  
  300.           _EEEE_RRRR_RRRR_OOOO_RRRR_:::: _iiii_nnnn_vvvv_aaaa_llll_iiii_dddd _ssss_yyyy_nnnn_tttt_aaaa_xxxx
  301.           _TTTT_OOOO _FFFF_IIII_XXXX_:::: _rrrr_eeee_ffff_eeee_rrrr _tttt_oooo _mmmm_aaaa_nnnn_uuuu_aaaa_llll
  302.  
  303.      Example 3:
  304.  
  305.      When the environment variable _SSSS_EEEE_VVVV______LLLL_EEEE_VVVV_EEEE_LLLL is set as follows:
  306.  
  307.           _SSSS_EEEE_VVVV______LLLL_EEEE_VVVV_EEEE_LLLL_====_nnnn_oooo_tttt_eeee_,,,,_5555_,,,,_NNNN_OOOO_TTTT_EEEE
  308.  
  309.      the following call to _ffff_mmmm_tttt_mmmm_ssss_gggg:
  310.  
  311.           _ffff_mmmm_tttt_mmmm_ssss_gggg_((((_MMMM_MMMM______UUUU_TTTT_IIII_LLLL _|||| _MMMM_MMMM______PPPP_RRRR_IIII_NNNN_TTTT_,,,, _""""_UUUU_XXXX_::::_cccc_aaaa_tttt_""""_,,,, _5555_,,,, _""""_iiii_nnnn_vvvv_aaaa_llll_iiii_dddd _ssss_yyyy_nnnn_tttt_aaaa_xxxx_""""_,,,, _""""_rrrr_eeee_ffff_eeee_rrrr _tttt_oooo
  312.           _mmmm_aaaa_nnnn_uuuu_aaaa_llll_""""_,,,, _""""_UUUU_XXXX_::::_cccc_aaaa_tttt_::::_0000_0000_1111_""""_))))
  313.      produces:
  314.  
  315.           _UUUU_XXXX_::::_cccc_aaaa_tttt_:::: _NNNN_OOOO_TTTT_EEEE_:::: _iiii_nnnn_vvvv_aaaa_llll_iiii_dddd _ssss_yyyy_nnnn_tttt_aaaa_xxxx
  316.                    _TTTT_OOOO _FFFF_IIII_XXXX_:::: _rrrr_eeee_ffff_eeee_rrrr _tttt_oooo _mmmm_aaaa_nnnn_uuuu_aaaa_llll   _UUUU_XXXX_::::_cccc_aaaa_tttt_::::_0000_0000_1111
  317.  
  318. NNNNOOOOTTTTEEEESSSS
  319.      A slightly different standard error message format and a new developer
  320.      interface, pfmt, is being introduced as the replacement for fmtmsg.  A
  321.      similar interface, lfmt, is also being introduced for producing a
  322.      standard format message and forwarding messages to the console and/or to
  323.      the system message logging and monitoring facilities.  fmtmsg will be
  324.      removed at a future time.
  325.  
  326. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  327.      _ffff_mmmm_tttt_mmmm_ssss_gggg(1), _aaaa_dddd_dddd_ssss_eeee_vvvv_eeee_rrrr_iiii_tttt_yyyy(3C), _gggg_eeee_tttt_tttt_xxxx_tttt(3C), _pppp_rrrr_iiii_nnnn_tttt_ffff(3S).
  328.  
  329. DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
  330.      The exit codes for _ffff_mmmm_tttt_mmmm_ssss_gggg are the following:
  331.  
  332.      _MMMM_MMMM______OOOO_KKKK       The function succeeded.
  333.  
  334.      _MMMM_MMMM______NNNN_OOOO_TTTT_OOOO_KKKK    The function failed completely.
  335.  
  336.      _MMMM_MMMM______NNNN_OOOO_MMMM_SSSS_GGGG    The function was unable to generate a message on the standard
  337.                  error stream, but otherwise succeeded.
  338.  
  339.  
  340.  
  341.  
  342.                                                                         PPPPaaaaggggeeee 5555
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349. ffffmmmmttttmmmmssssgggg((((3333CCCC))))                                                          ffffmmmmttttmmmmssssgggg((((3333CCCC))))
  350.  
  351.  
  352.  
  353.      _MMMM_MMMM______NNNN_OOOO_CCCC_OOOO_NNNN    The function was unable to generate a console message, but
  354.                  otherwise succeeded.
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.                                                                         PPPPaaaaggggeeee 6666
  409.  
  410.  
  411.  
  412.